﻿//////////////////////////////////////////////////////////////////////////////
//
//  Copyright © 1998-2024 Glodon Company Limited.  All rights reserved.
//
//  Use of this software is subject to the terms of the Glodon license
//  agreement provided at the time of installation or download, or which
//  otherwise accompanies this software in either electronic or hard copy form.  
//
//////////////////////////////////////////////////////////////////////////////

#pragma once

// std headers
#include <string>
#include <vector>

// qt headers
#include <QString>
#include <QStringList>

#include "GcsTools.h"

namespace gmepgcs
{
    class GCS_TOOLS_EXPORTS GcsLogObject
    {
    public:
        GcsLogObject();
        GcsLogObject(const std::wstring &obj);
        GcsLogObject(const QString &obj);
        GcsLogObject(const char *obj);
        GcsLogObject(const wchar_t *obj);
        GcsLogObject(std::initializer_list<GcsLogObject> objs);
        GcsLogObject(char *objs[]);
        GcsLogObject(const int obj);
        virtual ~GcsLogObject();

    public:
        QString ToQString() const;

    private:
        QString m_obj;
    };
}